home *** CD-ROM | disk | FTP | other *** search
- /****************************************************************************
- ** $Id: qmetaobject.h,v 2.5 1998/07/03 00:09:35 hanord Exp $
- **
- ** Definition of QMetaObject class
- **
- ** Created : 930419
- **
- ** Copyright (C) 1992-1998 Troll Tech AS. All rights reserved.
- **
- ** This file is part of Qt Free Edition, version 1.40.
- **
- ** See the file LICENSE included in the distribution for the usage
- ** and distribution terms, or http://www.troll.no/free-license.html.
- **
- ** IMPORTANT NOTE: You may NOT copy this file or any part of it into
- ** your own programs or libraries.
- **
- ** Please see http://www.troll.no/pricing.html for information about
- ** Qt Professional Edition, which is this same library but with a
- ** license which allows creation of commercial/proprietary software.
- **
- *****************************************************************************/
-
- #ifndef QMETAOBJECT_H
- #define QMETAOBJECT_H
-
- #ifndef QT_H
- #include "qconnection.h"
- #endif // QT_H
-
-
- struct QMetaData // member function meta data
- { // for signal and slots
- char *name; // - member name
- QMember ptr; // - member pointer
- };
-
-
- class QMetaObject // meta object class
- {
- public:
- QMetaObject( const char *class_name, const char *superclass_name,
- QMetaData *slot_data, int n_slots,
- QMetaData *signal_data, int n_signals );
- ~QMetaObject();
-
- const char *className() const { return classname; }
- const char *superClassName() const { return superclassname; }
-
- QMetaObject *superClass() const { return superclass; }
-
- int nSlots( bool=FALSE ) const;
- int nSignals( bool=FALSE ) const;
-
- QMetaData *slot( const char *, bool=FALSE ) const;
- QMetaData *signal( const char *, bool=FALSE ) const;
-
- QMetaData *slot( int index, bool=FALSE ) const;
- QMetaData *signal( int index, bool=FALSE ) const;
-
- private:
- QMemberDict *init( QMetaData *, int );
- QMetaData *mdata( int code, const char *, bool ) const;
- QMetaData *mdata( int code, int, bool ) const;
-
- char *classname; // class name
- char *superclassname; // super class name
- QMetaObject *superclass; // super class meta object
- QMetaData *slotData; // slot meta data
- QMemberDict *slotDict; // slot dictionary
- QMetaData *signalData; // signal meta data
- QMemberDict *signalDict; // signal dictionary
-
- private: // Disabled copy constructor and operator=
- QMetaObject( const QMetaObject & );
- QMetaObject &operator=( const QMetaObject & );
- };
-
-
- #endif // QMETAOBJECT_H
-